Since the inception of computer networks, the size of networks has grown exponentially. Today, any number of computing devices may be connected over a network, and data and services provided by those devices may be accessed from any number of locations. With that growth, the complexity of managing storage solutions across networks has increased.
In traditional computer networks, data paths are implemented by interconnecting switches, routers, and other network devices throughout the network. Traditional computer networks can be too rigid and complex for these new environment requirements. Network virtualization is a set of evolving concepts aiming at allowing network administrators to have control over traffic across the network without physically modifying network devices. Network virtualization is one of the use cases usually associated to software defined networking solutions.